Improving GNU Compiler Collection Infrastructure for Streamization

نویسندگان

  • Antoniu Pop
  • Sebastian Pop
  • Harsha Jagasia
  • Jan Sjödin
  • Paul H J Kelly
چکیده

GNU Compiler Collection (GCC) needs a strategy to support future multicore architectures, which will probably include heterogeneous accelerator-like designs with explicit management of scratchpad memories. Some have further restrictions; for example, SIMD has limited synchronization capabilities. Some platforms will probably offer hardware support for streaming, transactions, and speculation. The purpose of this paper is to survey and evaluate some automatic and manual techniques for improving support for such targets in GCC. We focus on translation of sequential code for such platforms, i.e., the translation to task graphs and their communication and memory access operations. The paper provides an evaluation of the communication library support on an AMD PhenomT M X4 9550 quad-core processor. We use these experiments to tune the automatic task partitioning algorithm implemented in GCC. The paper concludes with recommendations for strategic developments of GCC to support a stream programming language and improve the automatic generation of streamized tasks.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An Evaluation of the New Framework for Loop Nest Optimization in GCC

This paper presents an evaluation of the new framework for loop nest optimization of the GNU Compiler Collection (GCC). Multiple structural and experimental aspects of this infrastructure are considered: performance of the generated code, effectiveness of the analyzers and optimizers, compilation overhead, together with possible improvements. The evaluation is based on the SPEC CPU2000 and Java...

متن کامل

Automatic Streamization in GCC

Multi-cores and multi-processors became ubiquitous during the last few years, and the trend is to increase the number of simple, power-efficient, and slower cores per chip. One of the results is that the performance of single-threaded applications did not significantly improve, or even declined, on new processors, which heightened the interest in compiler automatic parallelization techniques. O...

متن کامل

A Compile-Time Infrastructure for GCC Using Haskell (extended version)

This project aims to improve the metaprogramming and verification capabilities of the GNU Compiler Collection. It consists of a plugin infrastructure that exposes two compile-time mechanisms. The first of these is a mechanism by which one may perform arbitrary computations over types within the context of the C++ template metaprogramming infrastructure. The second of these exposes selected port...

متن کامل

A Compile-Time Infrastructure for GCC Using Haskell

This project aims to improve the metaprogramming and verification capabilities of the GNU Compiler Collection. It consists of a plugin infrastructure that exposes two compile-time mechanisms. The first of these is a mechanism by which one may perform arbitrary computations over types within the context of the C++ template metaprogramming infrastructure. The second of these exposes selected port...

متن کامل

Tree SSA – A New High-Level Optimization Framework for the GNU Compiler Collection∗

In this paper we introduce Tree SSA, a new optimization framework for the GNU Compiler Collection (GCC) based on the Static Single Assignment form. The paper provides a brief historical perspective on GCC’s development, the rationale behind the new framework and its potential applications. We will also discuss some of the analyses and optimizations that are being designed and implemented on top...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008